package com.foundersoftware.commons.organization.service.impl;

import java.rmi.RemoteException;
import java.util.Set;

import com.foundersoftware.commons.organization.ObjectAlreadyExistsException;
import com.foundersoftware.commons.organization.ObjectNotFoundException;
import com.foundersoftware.commons.organization.OrganizationException;
import com.foundersoftware.commons.organization.dao.IOrganizationDAO;
import com.foundersoftware.commons.organization.model.AbstractOrganizationObject;
import com.foundersoftware.commons.organization.model.Employee;
import com.foundersoftware.commons.organization.model.EmployeeType;
import com.foundersoftware.commons.organization.model.OrganizationUnit;
import com.foundersoftware.commons.organization.model.OrganizationUnitType;
import com.foundersoftware.commons.organization.model.Position;
import com.foundersoftware.commons.organization.model.PositionType;
import com.foundersoftware.commons.organization.model.Responsibility;
import com.foundersoftware.commons.organization.model.Role;
import com.foundersoftware.commons.organization.model.RoleType;
import com.foundersoftware.commons.organization.model.Type;
import com.foundersoftware.commons.organization.model.WorkGroup;
import com.foundersoftware.commons.organization.model.WorkGroupType;
import com.foundersoftware.commons.organization.service.IOrganizationService;

public class OrganizationServiceImpl implements IOrganizationService {
    private IOrganizationDAO organizationDAO = null;
	public IOrganizationDAO getOrganizationDAO() {
		return organizationDAO;
	}

	public void setOrganizationDAO(IOrganizationDAO organizationDAO) {
		this.organizationDAO = organizationDAO;
	}

	public void addEmployeeToOrganizationUnit(Employee employee, OrganizationUnit organization)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void addEmployeeToWorkGroup(Employee employee, WorkGroup workGroup) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void addEmployeesToOrgainzationUnti(Set<Employee> employees, OrganizationUnit organization) {
		// TODO Auto-generated method stub

	}

	public void addEmployeesToWorkGroup(Set<Employee> employees, WorkGroup workGroup) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void addPositionToOrganizationUnit(Position position, OrganizationUnit organizationUnit)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void addPositionsToOrganizationUnit(Set<Position> positions, OrganizationUnit organizationUnit)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void addResponsibilitiesToPosition(Set<Responsibility> responsibilities, Position position)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void addResponsibilitiesToRole(Set<Responsibility> responsibilities, Role role)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void addResponsibilityToPosition(Responsibility responsibility, Position position)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void addResponsibilityToRole(Responsibility responsibility, Role role) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void addRoleToWorkGroup(Role role, WorkGroup workGroup) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void addRolesToWorkGroup(Set<Role> roles, WorkGroup workGroup) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void assignPositionToEmployee(Position position, Employee employee) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void assignPositionsToEmployee(Set<Position> positions, Employee employee) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void assignRoleToEmployee(Role role, Employee employee, WorkGroup workGroup) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void assignRolesToEmployee(Set<Role> roles, Employee employee, WorkGroup workGroup)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public Employee createEmployee(Employee employee) throws ObjectAlreadyExistsException {
		// TODO Auto-generated method stub
		return null;
	}

	public EmployeeType createEmployeeType(EmployeeType employeeType) {
		// TODO Auto-generated method stub
		return null;
	}

	public OrganizationUnit createOrganizationUnit(OrganizationUnit organizationUnit)
			throws ObjectAlreadyExistsException {
		// TODO Auto-generated method stub
		return null;
	}

	public OrganizationUnitType createOrganizationUnitType(OrganizationUnitType organizationUnitType)
			throws ObjectAlreadyExistsException {
		// TODO Auto-generated method stub
		return null;
	}

	public Position createPosition(Position position) throws ObjectAlreadyExistsException {
		// TODO Auto-generated method stub
		return null;
	}

	public PositionType createPositionType(PositionType positionType) throws ObjectAlreadyExistsException {
		// TODO Auto-generated method stub
		return null;
	}

	public Responsibility createResponsibility(Responsibility responsibility) throws ObjectAlreadyExistsException {
		// TODO Auto-generated method stub
		return null;
	}

	public Role createRole(Role role) throws ObjectAlreadyExistsException {
		// TODO Auto-generated method stub
		return null;
	}

	public RoleType createRoleType(RoleType roleType) throws ObjectAlreadyExistsException {
		// TODO Auto-generated method stub
		return null;
	}

	public WorkGroup createWorkGroup(WorkGroup workGroup) throws ObjectAlreadyExistsException {
		// TODO Auto-generated method stub
		return null;
	}

	public WorkGroupType createWorkGroupType(WorkGroupType workGroupType) throws ObjectAlreadyExistsException {
		// TODO Auto-generated method stub
		return null;
	}

	public void deleteEmployee(Employee employee) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void deleteOrganizationUnit(OrganizationUnit organizationUnit) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void deleteOrganizationUnitType(OrganizationUnitType organizationUnitType) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void deletePosition(Position position) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void deletePostionType(PositionType positionType) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void deleteResponsibility(AbstractOrganizationObject responsibility) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void deleteRole(Role role) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void deleteRoleType(Type roleType) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void deleteWorkGroup(WorkGroup workGroup) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void deleteWorkGroupType(WorkGroupType workGroupType) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public Employee[] getAllEmployees() throws OrganizationException, RemoteException {
		// TODO Auto-generated method stub
		return null;
	}

	public OrganizationUnitType[] getAllOrganizationUnitTypes() throws OrganizationException, RemoteException {
		// TODO Auto-generated method stub
		return null;
	}

	public OrganizationUnit[] getAllOrganizationUnits() throws OrganizationException, RemoteException {
		// TODO Auto-generated method stub
		return null;
	}

	public PositionType[] getAllPositionTypes() throws OrganizationException, RemoteException {
		// TODO Auto-generated method stub
		return null;
	}

	public Position[] getAllPositions() throws OrganizationException, RemoteException {
		// TODO Auto-generated method stub
		return null;
	}

	public Responsibility[] getAllResponsibilities() throws OrganizationException, RemoteException {
		// TODO Auto-generated method stub
		return null;
	}

	public RoleType[] getAllRoleTypes() throws OrganizationException, RemoteException {
		// TODO Auto-generated method stub
		return null;
	}

	public Role[] getAllRoles() throws OrganizationException, RemoteException {
		// TODO Auto-generated method stub
		return null;
	}

	public WorkGroupType[] getAllWorkGroupTypes() throws OrganizationException, RemoteException {
		// TODO Auto-generated method stub
		return null;
	}

	public WorkGroup[] getAllWorkGroups() throws OrganizationException, RemoteException {
		// TODO Auto-generated method stub
		return null;
	}

	public OrganizationUnit[] getChildOrganizationUnits(OrganizationUnit superOrganizationUnit)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Employee getEmployee(String employeeid) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Employee[] getEmployeesOfOrganizationUnit(OrganizationUnit organizationUnit, boolean isDirect)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public OrganizationUnit getOrganizationUnit(String organizationUnitId) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public OrganizationUnit getOrganizationUnitOfEmployBelongTo(String employeeId) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public OrganizationUnitType getOrganizationUnitType(String organiztionUnitTypeId) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Position getPosition(String positionId) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Position getPositionsOfEmployee(Employee employee) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Position[] getPositionsOfOrganizationUnit(OrganizationUnit organizationUnit) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public PositionType getPostionType(String positionTypeId) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Responsibility[] getResponsibilitiesOfPosition(Position position) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Responsibility[] getResponsibilitiesOfRole(Role role) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Responsibility getResponsibility(String responsibilityId) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Role getRole(String roleId) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public RoleType getRoleType(String roleTypeId) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Role[] getRolesOfEmployee(Employee employee, WorkGroup workGroup) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Role[] getRolesOfWorkGroup(WorkGroup workGroup) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public WorkGroup getWorkGroup(String workGroupId) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public WorkGroupType getWorkGroupType(String workGroupTypeId) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public boolean isEmployeeBelongsToOrganizationUnit(Employee employee, OrganizationUnit organizationUnit)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return false;
	}

	public boolean isEmployeeBelongsToWorkGroup(Employee employee, WorkGroup workGroup) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return false;
	}

	public boolean isEmployeeHasPosition(Employee employee, Position position) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return false;
	}

	public boolean isEmployeeHasRoleInsideWorkGroup(Employee employee, Role role, WorkGroup workGroup)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return false;
	}

	public boolean isOrganizationUnitHasPosition(OrganizationUnit organizationUnit, Position position)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return false;
	}

	public boolean isPositionHasResponsibility(Position position, AbstractOrganizationObject responsibility)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return false;
	}

	public boolean isRoleHasResponsibility(Role role, AbstractOrganizationObject responsibility)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return false;
	}

	public boolean isWorkGroupHasRole(WorkGroup workGroup, Role role) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return false;
	}

	public void removeEmployeeFromOrganizationUnit(Employee employee, OrganizationUnit organization)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void removeEmployeeFromWorkGroup(Employee employee, WorkGroup workGroup) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void removePositionFromEmployee(Position position, Employee employee) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void removePositionFromOrganiztionUnit(Position position, OrganizationUnit organizationUnit)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void removeResponsibilityFromPosition(AbstractOrganizationObject responsibility, Position position)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void removeResponsibilityFromRole(AbstractOrganizationObject responsibility, Role role)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void removeRoleFromEmployee(Role role, Employee employee, WorkGroup workGroup)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void removeRoleFromWorkGroup(Role role, WorkGroup workGroup) throws ObjectNotFoundException {
		// TODO Auto-generated method stub

	}

	public void setOrganizationStore(IOrganizationDAO orgStore) {
		// TODO Auto-generated method stub

	}

	public Employee updateEmployee(Employee employee) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public OrganizationUnit updateOrganizationUnit(OrganizationUnit organizationUnit) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public OrganizationUnitType updateOrganizationUnitType(OrganizationUnitType organizationUnitType)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Position updatePosition(Position position) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public PositionType updatePostionType(PositionType positionType) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public AbstractOrganizationObject updateResponsibility(AbstractOrganizationObject responsibility)
			throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Role updateRole(Role role) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public Type updateRoleType(Type roleType) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public WorkGroup updateWorkGroup(WorkGroup workGroup) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

	public WorkGroupType updateWorkGroupType(WorkGroupType workGroupType) throws ObjectNotFoundException {
		// TODO Auto-generated method stub
		return null;
	}

}
